import { createStore } from 'vuex'

import cart from './modules/cart'
import category from './modules/category'
import user from './modules/user'

// 导入创建持久化插件的函数
import createPersistedstate from "vuex-persistedstate"

// createStore() 创建仓库
export default createStore({
  // 状态
  state: {},
  // vuex的计算属性
  getters: {},
  // 修改状态
  mutations: {},
  // 异步操作
  actions: {},
  // 模块配置, 购物车 分类 用户
  modules: {
    cart,
    category,
    user
  },
  // 给vuex配置插件
  // 插件默认存储所有的模块数据到本地存储,只需要uer和cart模块需要存储
  plugins:[ 
    createPersistedstate({
      key:"erabbit-vue3-store",
      paths:["user","cart"],
  })
]
})
